package itheima01;

/**
 * @author Xiao
 * @date 2021/7/17
 */
public class LambdaDemo01 {
    /**
     * 需求：
     *      编写一个接口（ShowHandler），在该接口中存在一个抽象方法（show），该方法是无参数无返回值的。
     *      在测试类（LambdaDemo02）中存在一个方法（useShowHandler），方法的参数是ShowHandler类型的，
     *      在方法内部调用了ShowHandler的show方法。
     */
    public static void main(String[] args) {
        /*useShowHandler(() -> {
            System.out.println("我是Lambda中的show方法");
        });*/
        useShowHandler(() -> System.out.println("我是Lambda中的show方法"));
        System.out.println("-------------");
        useShowHandler(new ShowHandler() {
            @Override
            public void show() {
                System.out.println("我是匿名内部类中的show方法");
            }
        });
    }

    public static void useShowHandler(ShowHandler s) {
        s.show();
    }
}
interface ShowHandler {
    void show();
}
